﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Capa_Entidad;
namespace Acceso_Datos.Clases_DAO
{
    public class clsPromocionDAO
    {
        private BDClinicaEntities ContextoDeObjs = new BDClinicaEntities();
        public bool Insertar(GEN_PROMOCION Obj)
        {
            try
            {
                ContextoDeObjs.AddObject("GEN_PROMOCION", Obj);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;
            }
            return true;
        }
        public bool Modificar(GEN_PROMOCION obj)
        {

            try
            {
                ContextoDeObjs.AttachTo("GEN_PROMOCION", obj);
                ContextoDeObjs.ObjectStateManager.ChangeObjectState(obj, System.Data.EntityState.Modified);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;

            }
            return true;
        }
        public bool Eliminar(GEN_PROMOCION obj)
        {
            try
            {
                ContextoDeObjs.AttachTo("GEN_PROMOCION", obj);
                ContextoDeObjs.DeleteObject(obj);
                ContextoDeObjs.SaveChanges();
            }
            catch (Exception)
            {
                return false;
            }
            return true;
        }
        public List<GEN_PROMOCION> listar()
        {
            List<GEN_PROMOCION> lista = new List<GEN_PROMOCION>();
            var q = from c in ContextoDeObjs.GEN_PROMOCION
                    select c;
            lista = q.ToList();
            return lista;
        }
        public int UltimoNumero()
        {
            var max = 0;

            try
            {
                max = ContextoDeObjs.GEN_PROMOCION.Select(x => x.PROM_ID_PROMOCION).Max();
                return max;
            }
            catch (Exception)
            {
                return max;
            }
        }
    }
}
